package com.thh.ftp.service;
import com.thh.ftp.pojo.SysFile;
import com.github.pagehelper.PageInfo;
import org.springframework.http.ResponseEntity;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

/****
 * @Author:thh
 * @Description:SysFile业务层接口
 * @Date 2019/12/11 14:39
 *****/
public interface SysFileService {





    /**
     * 处理文件返回流下载
     * @param id
     * @return
     */
    ResponseEntity<byte[]> download(HttpServletResponse response, String id);

    /**
     * 处理文件返回流显示
     * @param id
     * @return
     */
    ResponseEntity<byte[]> show(HttpServletResponse response, String id);

    /**
     * 删除附件(假删除) 保留半个月
     * @param id
     * @return 删除的条数
     */
    SysFile deleteFake(String id);

    /**
     * 删除附件(真删除) 立刻删除
     * @param id
     * @return 删除的条数
     */
    SysFile deleteReal(String id);

    SysFile upload(MultipartFile multipartFile, HttpServletRequest request, Long userId);

    /**
     * 查询列表
     * @param searchMap
     * @return
     */
    PageInfo getList(int page,int size,Map searchMap);

    PageInfo getMyList(int page,int size,Map searchMap, Long userId);
}
